package com.sora.pipeline.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 缺陷实体类
 * 
 * @author system
 * @since 2025-01-20
 */
@Data
@TableName("defects")
public class Defect {
    @TableId(type = IdType.AUTO)
    private Long id;
    
    /**
     * 缺陷编号
     */
    private String code;
    
    /**
     * 线路ID
     */
    private Long lineId;
    
    /**
     * 里程桩
     */
    private String milestone;
    
    /**
     * 里程桩ID
     */
    private Long milestoneId;
    
    /**
     * 缺陷类型ID
     */
    private Integer typeId;
    
    /**
     * 缺陷等级ID
     */
    private Integer levelId;
    
    /**
     * 状态：pending/confirmed/in_progress/completed/closed
     */
    private String status;
    
    /**
     * 位置描述
     */
    private String location;
    
    /**
     * 缺陷描述
     */
    private String description;
    
    /**
     * 报告人ID
     */
    private Long reporterId;
    
    /**
     * 报告时间
     */
    private LocalDateTime reportTime;
    
    /**
     * 图片JSON
     */
    private String imagesJson;
    
    /**
     * 备注
     */
    private String remarks;
    
    /**
     * 创建时间
     */
    private LocalDateTime createdAt;
    
    /**
     * 创建人
     */
    private Long createdBy;
    
    /**
     * 更新时间
     */
    private LocalDateTime updatedAt;
    
    /**
     * 更新人
     */
    private Long updatedBy;
    
    /**
     * 是否删除
     */
    private Boolean deleted;
}